Software-defined networking (SDN) is an approach to computer networking in which control is decoupled from the underlying network infrastructure. In software-defined networking architecture, the control plane is implemented in software, separate from the network equipment, and the data plane is implemented in the network equipment. OpenFlow is a leading protocol for SDN architecture. In an OpenFlow based network, data forwarding on a network device is controlled through flow table entries populated by an OpenFlow controller that manages the control plane for that network.